<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>3.姓名案例_计算属性实现</title>
    <!-- 引入Vue -->
    <script type="text/javascript" src="../js/vue.js"></script>
</head>

<body>
    <!-- 准备好一个容器-->
    <div id="demo">
        <h2>{{schoolName}}</h2>
        <input type="text" v-model="schoolName">
        <hr>
        姓:<input type="text" v-model="firstName"><br>
        名:<input type="text" v-model="lastName"><br>
        全名:<span>{{fullName}}</span>
    </div>
</body>

<script type="text/javascript">
    //阻止 vue 在启动时生成生产提示。
    Vue.config.productionTip = false
    const vm = new Vue({
        el: '#demo',
        data: {
            firstName: 'zhang',
            lastName: 'san',
            schoolName: '尚硅谷'
        },
        methods: {
            test() {
                console.log('@@@')
            }
        },
        computed: {
            //声明一个计算属性
            fullName: {
                get() {
                    console.log('fullName-get')
                    const {
                        firstName,
                        lastName
                    } = this
                    return firstName[0].toUpperCase() + firstName.slice(1) + '-' + lastName
                },
                set() {
                    const arr = val.split('-')
                    this.firstName = arr[0].toLowerCase()
                    this.lastName = arr[1]
                }
            }
        }

    })
    console.log(vm)
</script>

</html>